package com.wl.aop;

import java.lang.annotation.*;

@Anno(value="abc",age=10,likes="学习")
public class AnnoDemo {
    @Anno(value = "def",likes={"运动","睡觉"})
    int a;

    public static void main(String[] args) {
        Class<AnnoDemo> aClass = AnnoDemo.class;
        Anno anno = aClass.getAnnotation(Anno.class);
        System.out.println("anno =" + anno);
        System.out.println("anno.value() = " + anno.value());

        Class<AnnoDemoSub> aClass1 = AnnoDemoSub.class;
        Anno anno1 = aClass1.getAnnotation(Anno.class);
        System.out.println("anno1 = " + anno1);
    }
}

class AnnoDemoSub extends AnnoDemo{

}

@Target({ElementType.TYPE,ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@interface Anno{
    String value();
    int age() default 20;
    String[] likes();
}
